import { defineStore } from 'pinia'
import { ref } from 'vue'
// 定义用户信息类型
interface UserInfo {
  id: number | null
  name: string
  avatar: string
}

export const useUserStore = defineStore('user', () => {
  const isLoggedIn = ref(false)
  const userInfo = ref<UserInfo>({
    id: null,
    name: '',
    avatar: ''
  })

  const login = (userData: Partial<UserInfo>) => {
    isLoggedIn.value = true
    userInfo.value = {
      id: userData.id || 1,
      name: userData.name || '用户',
      avatar: userData.avatar || '/images/avatars/default-avatar.png'
    }
  }

  const logout = () => {
    isLoggedIn.value = false
    userInfo.value = {
      id: null,
      name: '',
      avatar: ''
    }
  }

  return {
    isLoggedIn,
    userInfo,
    login,
    logout
  }
}) 